<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // 计算三个数字的和
  // function sum(a, b, c){
  //   return a + b + c;
  // }
  // console.log( sum(5, 6) );
  
  // function sum(a){
  //   return function(b){
  //     return function(c){
  //       return a + b + c;
  //     }
  //   }
  // }

  // const s = sum(5);
  // const ss = s(6);
  // const res = ss(7);
  // console.log( res );

  // const res = sum(5)(6)(7);
  // console.log(res)

  // console.log(fn(1)[2](3)[4](5));    // 9
  // function fn(a){
  //   return [0, 1, function(b){
  //     return [0, 1, 2, 3, function(c){
  //       return a + b + c;
  //     }]
  //   }]
  // }

  // =======

  // 需求：
  // 表单验证：用户名验证，手机号验证，紧急联系人手机号验证，

  const unReg = /^\w{6,10}$/;
  // 创建一个专门验证用户名的功能
  const unTest = test(unReg);
  console.log(unTest("admin123"));
  console.log(unTest("admin"));
  
  const telReg = /^1[3-9]\d{9}$/;
  // 创建一个专门验证手机号的功能
  const telTest = test(telReg);

  // 只传入手机号，不用关注验证规则
  console.log(telTest("17600901915"));
  console.log(telTest("17600901916"));
  console.log(telTest("176009019178"));
  console.log(telTest("1760090191"));
  console.log(telTest("12600901916"));
  console.log(telTest("17600901917"));
  console.log(telTest("17600901918"));
  console.log(telTest("17600901919"));

  // 单独封装一个专门验证手机号的功能

  function test(reg){
    return function (str){
      return reg.test(str);
    }
  }


</script>
</html>